SQL

SQL Nedir?

Sql bir şirkette veya herhangi bir kurumda müşterilerin – kullanıcıların bir takım bilgilerinin bulunduğu hatta bir sunucu içerisinde birden fazla da bulunduğu veri tabanıdır(database). Veri tabanı içersinde kullanıcılara ait kimlik bilgileri, kullanıcı adı şifre gibi birçok bilgi bulunmaktadır. Veri tabanlarının 10 dan fazla çeşidi vardır. Bu çeşitlilikler genelde aynı amaç içindir fakat çalıştığı işletim sistemi gibi çeşitliliklere göre uyarlanmıştır. Kodlamasına örnek vermek gerekirse bir veri tabanı kodunda bi kodun sonu ; ile kapanıyorken birinde # birinde – şeklinde kullanıldığını görmek mümkündür. Bu yüzden eğer aktif-pasif taramalarda bir sunucu hakkında bilgi edinemediysek veya çalıştığı veri tabanı hakkında bilgi edinemediysek test aşamasında parametreler denenmelidir.    Bu güvenlik açığı etkisi kritik ve bir güvenlik açığı bulduğumuzda bunu nasıl sömüreceğimiz ve nasıl etkisiyle beraber raporlayacağımızı daha iyi anlamak adına phpmyadmin üzerinde temel komutları göreceğiz. 

 

 

 

 

UPDATE KOMUTU

Kullanımı: UPDATE [tablo adı] SET [yeni bilgiler] WHERE [şartlar]

UPDATE komutu, veri tabanında bulunan verileri değiştirmek-güncellemek amacıyla kullanılan bir deyimdir. 

Bu formata göre UPDATE komutundan sonra hangi veri tabanı tablosunda güncelleme yapmak istiyorsak o tablonun adını yazıyoruz. SET deyiminden sonra değiştirmek istediğimiz bilgileri giriyoruz. Son olarak WHERE ifadesinden sonra değiştirme işlemi yapacağımız kayıtlarla ilgili şartı veya şartları yazıyoruz. WHERE ifadesinin kullanımı zorunlu değildir, fakat WHERE kullanılmazsa bütün kayıtlar değiştirme işleminden etkilenecektir.

image

image

Örnekte de görüldüğü gibi Meryem ismini Fatma ismiyle değiştirdik.

 

 

 

 

 

 

 

 

 

 

 

DELETE KOMUTU

Kullanımı:

Delete Form [İşlem Yapılacak Dosya Adı] WHERE [Şartlar]

Delete Komutu tabloda bulunan verilerin bir kısmını silme işlevini görmektedir. Bu komutun kullanımında dikkat edilmesi gereken bir durum vardır. Seçilen satırları silmesi için Delete komutu kullanılırken şartı belirtmek oldukça önemlidir.

Seçilen satırları silme işleminde WHERE yan tümcesini bir DELETE sorgusuyla kullanılması ile şart belirtilmiş olur. Şart belirtilmeden yapılan işlem sonrasında tüm verilerin silinmesine neden olmaktadır.

image

image

image

 

ALTER TABLE KOMUTU

ALTER TABLE komutu; mevcut tabloya sütun eklemek, sütun silmek ya da mevcut sütunun yapısında değişiklik yapmak için kullanılır. Mevcut tabloya çeşitli kısıtlamalar eklemek ya da kısıtlamaları kaldırmak için de ALTER TABLE komutu kullanılır.

 

image

Yukarıda gördüğümüz gibi alter table komutu sayesinde randevu adlı tablomuza doktoradi adlı sütun ekledik.

 

 

image

Burada ise alter table komutu ile randevu adlı tablomuzdan bolumadi adlı sütununu sildik.

 

 

 

DROP TABLE KOMUTU

Kullanımı şu şekildedir: DROP TABLE tabloadi

DROP TABLE deyimi, bir tabloyu ve tabloya bağlı olan tüm yapıları (dizinler, tetikleyiciler, kısıtlamalar) kaldırmak için kullanılır.

Bu deyim kullanıldığında tablo ve içindeki veriler geri dönüşü olmayacak şekilde silinecektir.

image

 

 

image

Drop table komutu sayesinde randevu adlı tabloyu sildik.

 

 

 

 

CREATE VİEW KOMUTU

KULLANIM: CREATE VIEW isim [ sütunismi  ] AS sorgu

CREATE VIEW bir sorgudan yeni bir sanal tablo tanımlar. Sanal tablo fiziken mevcut değildir. Her seferinde sorgu yeniden çalıştırılıp sanal tablo oluşturulur.

Yeni bir view oluşturmak istediğimizde, CREATE VİEW komutu ve View ismi yazılıp, sonrasında AS ifadesiyle View’da çalışmasını istediğimiz sorgu belirlenir. Böylece sorguyu çalıştırdığımızda yeni bir view oluşturmuş oluruz.

Aşağıdaki örnekte doktor tablosundan istediğimiz sütunları seçip örnek tablo isminde yeni view oluşturduk.

image

 

image

 

 

 

 

 

ALTER VİEW KOMUTU

View yapısında güncelleme gerçekleştirmek istendiğinde, ALTER ifadesi kullanılır. ALTER ifadesinden sonra, güncellenecek olan View ismi ve güncelleme sorgusu yazılır. Aşağıdaki örnekte oluşturduğumuz ornektablo view’ına istediğimiz sütunları ekleyip ornektablo view yapısını güncellemiş oluruz.

image

Görüldüğü gibi ornektablo adlı view’a bolumno atayarak güncelledik.

 

image

 

 

 

 

 

LIKE KOMUTU

LIKE komutu database içinde yer alan istenilen herhangi bir tabloda istenilen herhangi bir column içinde belirtilen ölçütler doğrultusunda arama yapar.

Aratılmak istenilen kelimenin başına, sonuna ya da her iki tarafına "%" işareti koyularak gerçekleştirilir.

Örneğin "a%" kullanım şekli "a" ile başlayan kayıtları getirir. "%a" ise "a" ile biten kayıtları getirir. Bir kelimenin sadece orta kısımlarını hatırlıyorsunuz diyelim.

Bu durumda örnek verirsek "%ilgi%" şeklinde bir arama yaparsak eğer kayıtlar arasında içinde "ilgi" sözcüğü geçen kayıtları getirir.

 

image

 

Like komutu sayesinde içinde gör harflerinin geçtiği hasta isimlerini listeledik.

 

 

 

 

 

 

DISTINCT KOMUTU

Kullanımı: SELECT DISTINCT kolon1, kolon2,  FROM tablo_adi;

SQL select distinct komutu kullanımı select sorgusundan dönen aynı kayıtları tek kayda indirmek için kullanılır. Bazen sorgudan birden fazla aynı kayıt dönebilir böyle durumlarda distinct kullanırız.

 

 

image

Bölümü Genel Cerrahi olan kaç farklı doktor adlarını listeledik.

 

 

 

 

 

 

 

 

 

 

 

            COUNT KOMUTU

Kullanımı: SELECT COUNT sütun adı FROM tablo adı

COUNT fonksiyonu, belirtilen ölçütlerle eşleşen satır sayısını döndürür.

Kısaca; veritabanındaki kayıtları sayabilmek için yerleşik COUNT fonksiyonunu kullanırız. Burada dikkat edilmesi gereken alan üzerindeki kayıt sayıları alınırken boş verilerin dikkate alınmamasıdır.

SELECT COUNT(alan_adi) FROM tablo: belirttiğimiz alandaki boş olanlar hariç kaç tane kayıt olduğunu elde ederiz.

SELECT COUNT(*) FROM tablo: tablomuzdaki toplam kayıt sayısını elde ederiz.

SELECT COUNT(DISTINCT alan_adi) FROM tablo: DISTNINCT kullanımında ise belirtilen alandaki tekrar eden kayıtlar sadece bir defa sayılır.

 

image

 

 

 

 

 

 

İÇ İÇE SELECT KOMUTU

Alt sorgular SQL içerisinde kullanılan SELECT sorgusunun özel bir türüdür. Veri tabanı tasarımı sırasında verilerin tekrarını önlemek amacıyla nesnelere parçalara ayrılır.

 

image

İç içe select komutu ile islemnosu en büyük olan hasta bilgilerini getirdik.

 

 

BETWEEN KOMUTU

Sql de between komutu genel kullanımı 2 tarih arasında bulunan kayıtları getirmek veya ilgili parametreye verdiğimiz 2 değer arasındaki kayıtları getirmek için kullanırız. Sql between kullanım şekli aşağıdaki gibidir:

image

Görüldüğü gibi randevu tarihi aralığına göre islem adlı tabloyu getirttik.

INNER JOIN KOMUTU

SQL inner join SQL Join türlerinden en çok kullanılan tablo birleştirme türüdür. SQL inner join iki veya daha fazla tablodaki ilişkili değerleri seçmek/birleştirmek için kullanılır. Özetle; SQL INNER JOIN ifadesi ortak değere sahip tabloları birleştirmek için kullanılır.

image

Örnekte de gördüğümüz gibi birbiriyle bağlantılı iki tablonun sütunlarından inner join komutu ile birleştirerek bir tablo yazdırdık.